package samsung.sds.groupManagement.dao;

import java.math.BigDecimal;
import java.util.List;

import samsung.sds.groupManagement.model.GroupUserEntity;
import samsung.sds.system.common.baseQuery.BaseMapper;
import samsung.sds.system.common.model.QueryParam;
import samsung.sds.userManagement.model.UserEntity;
/**
 * @author wch.wu & lulu.yuan
 * @createDate 2016-01-07
 * 
 * 组中用户管理的接口
 */
public interface GroupUserMapper extends BaseMapper<GroupUserEntity> {
	
	/**
	 * 根据groupId删除指定组的所有成员
	 * @param groupIds 	需要删除所有成员的groupIds
	 * @return
	 */
	public int deleteTF_F_GROUP_USER01( List<String> groupIds );
	
	/**
	 * 根据groupId 查询这个组下面所有成员信息
	 * @param groupId
	 * @return
	 */
	public List<UserEntity> selectSYS_USER( String groupId );
	
	/**
	 * 给组添加用户
	 * @param groupUserEntitys
	 */
	public int insertTF_F_GROUP_USER(GroupUserEntity groupUserEntity );
	
	/**
	 * 从组中删除用户
	 * @param userNames
	 * @param groupId
	 */
	public int deleteTF_F_GROUP_USER02(List<String> userNames, String groupId);
	
	/**
	 * 查询在该组下的用户带分页的list
	 * @param page
	 * @return
	 */
	public List<UserEntity> queryUsersListPage(QueryParam param);
	
	/**
	 * 查询不在该组下的用户分页列表list
	 * @param page
	 * @return
	 */
	public List<GroupUserEntity> queryNoGroupUsersListPage(QueryParam param);
	
	/**
	 * 查询已在该组下的用户分页列表list
	 * @param page
	 * @return
	 */
	public List<GroupUserEntity> queryExistGroupUsersList(String groupId);
	 
	 
	
}
